﻿#ifndef ERRORCODE_H
#define ERRORCODE_H


//编码方式：ABBBCCCC
//A:错误级别        A【级别】    1=Trace(调试)；2=Info(提示)；3=Warn(警告)；4=Error(错误)；
//BBB:模块号        000-暂时保留  001-009系统   010-099 基础模块     100-499 平台-上位机使用    500-899 算法使用    900-999 备用
//CCCC:错误编码     在模块的基础上顺序累加

//100 - 499
//100-199 通用模块    200-209 实例周边    210-219 相机模块    220-229 通讯模块    230-239 HMI控件

#define CODE_OK                       00000000  //正确
#define CODE_ERR_NOMSG                               20010001//错误了，但是不打印错误码

/********************上位机Studio:100-499范围*************************/
/*******************************************************************/
/********************通用模块:100-199*************************/
#define WARN_COMPILE_ERRPOS                         31010000 //【编译指令】指令位置错误

/********************实例模块:200-209*************************/
#define WARN_INST_NULLOBJ                         32010000 //【实例模块】节点为空
#define WARN_INST_NULLINST                         32010001 //【实例模块】实例为空



#define CODE_WARN_NORMAL_NULLINST                         30000000 //【通用模块】实例节点为空
#define CODE_WARN_NORMAL_EMPTYARRAY                         30000001 //【通用模块】数组为空
#define CODE_WARN_NORMAL_DIVZERO                         30000002 //【通用模块】除数不能为零
#define CODE_WARN_NORMAL_INSTINIT                         30000003 //【通用模块】实例初始化失败
#define CODE_WARN_NORMAL_NOLINK                         30000003 //【通用模块】必须的实例属性没有链接
/********************XVObject01*************************/
#define CODE_WARN_OBJ_LOAD                         30100000 //【对象模块】加载文本错误
#define CODE_WARN_OBJ_SAVE                         30100001 //【对象模块】保存文本错误
#define CODE_WARN_OBJ_CANNOTFINDATTR               30100002 //【对象模块】没有找到正确节点
/********************实例周边 INST 100-199*************************/
#define WARN_INST_NULLIMG                           31000001    //【实例周围】传入图像为空
#define WARN_INST_NULLMODEL                           31000002    //【实例周围】传入模板为空

/********************相机模块200-209*************************/
#define CODE_WARN_CAMERA_NULL                         32000000 //【相机模块】相机为空
#define CODE_WARN_CAMERA_REVERSEX_FAIL                         32000001 //【相机模块】设置或获取X翻转失败
#define CODE_WARN_CAMERA_REVERSEY_FAIL                         32000002 //【相机模块】设置或获取Y翻转失败
#define CODE_WARN_CAMERA_WIDTH_FAIL                         32000003 //【相机模块】获取图像宽度失败
#define CODE_WARN_CAMERA_HEIGHT_FAIL                         32000004 //【相机模块】获取图像高度失败
#define WARN_CONNECTCAMERA_FAILURE                         32000005 //【相机模块】连接相机失败
#define WARN_STARTCAMERA_FAILURE                         32000006 //【相机模块】启动相机失败
#define CODE_WARN_CAMERA_NULL                         32000000 //【相机模块】相机为空
#define CODE_WARN_CAMERA_NULL                         32000000 //【相机模块】相机为空
/********************通讯模块210-219*************************/
#define CODE_WARN_COMM_PARAM                       30300000 //【通讯模块】参数解析失败
#define CODE_WARN_COMM_MODBUS_CREATEFAIL                       30300001 //【Modbus通讯】实例创建失败，错误的串口设置
#define CODE_WARN_COMM_MODBUS_SETSTATION                       30300002 //【Modbus通讯】设置站号失败
#define CODE_WARN_COMM_MODBUS_CONNECTFAIL                       30300003 //【Modbus通讯】实例连接失败
#define CODE_WARN_COMM_MODBUS_READFAIL                       30300004 //【Modbus通讯】读取数据失败
#define CODE_WARN_COMM_MODBUS_WRITEFAIL                       30300005 //【Modbus通讯】写入数据失败
#define CODE_WARN_COMM_MODBUS_READMAXSIZE                       30300006 //【Modbus通讯】读取数组不能超过250字节
#define CODE_WARN_COMM_MODBUS_WRITEMAXSIZE                       30300007 //【Modbus通讯】写入数组不能超过246字节

#define CODE_WARN_COMM_MODBUS_NULLINST                       30300010 //【Modbus通讯】通讯实例为空

#define CODE_WARN_COMM_SERIAL_CREATEHANDLE                       30300030 //【串口通讯】串口句柄创建失败
#define CODE_WARN_COMM_SERIAL_HANDATTACH                         30300031 //【串口通讯】串口句柄附加失败
#define CODE_WARN_COMM_SERIAL_HANDOTHER                       30300032 //【串口通讯】串口句柄其他错误
#define CODE_WARN_COMM_SERIAL_GETPARAFAIL                       30300033 //【串口通讯】串口参数获取失败
#define CODE_WARN_COMM_SERIAL_INVALIDBAUDRATE                       30300034 //【串口通讯】无效的波特率
#define CODE_WARN_COMM_SERIAL_INVALIDPARITY                       30300035 //【串口通讯】无效的奇偶检验位
#define CODE_WARN_COMM_SERIAL_INVALIDSTOPBIT                       30300036 //【串口通讯】无效的停止位
#define CODE_WARN_COMM_SERIAL_SETFAIL                       33000037 //【串口通讯】串口设置失败
#define CODE_WARN_COMM_SERIAL_SENDEMPTY                       33000038 //【串口通讯】串口发送失败
#define CODE_WARN_COMM_SERIAL_RECEIVEEMPTY                       33000039 //【串口通讯】串口接收失败

#define CODE_WARN_COMM_TCP_CLIENT_NULLINST                      33000040//临时
#define CODE_WARN_COMM_TCP_CLIENT_DATATOWRITEISEMPTY            33000041//临时
#define CODE_WARN_COMM_TCP_CLIENT_WRITEDATAFAIL  33000042//临时
#define CODE_WARN_COMM_TCP_CLIENT_ISDISCONNECTED  33000043//临时
#define CODE_WARN_COMM_TCP_CLIENT_ISSEARCHINGSERVER  33000044//临时
#define CODE_WARN_COMM_TCP_CLIENT_GETTHESPECIFIEDLENGTHDATAFAIL  33000045//临时
#define CODE_WARN_COMM_TCP_CLIENT_ISBOUNDTOIPANDADDRESS  33000046//临时
#define CODE_WARN_COMM_TCP_CLIENT_ISDISCONNECTINGFROMSERVER  33000047//临时
#define CODE_WARN_COMM_TCP_CLIENT_INTERNALUSEONLY  33000048//临时
#define CODE_WARN_COMM_TCP_SERVER_NULLINST  33000049//临时
#define CODE_WARN_COMM_TCP_CLIENT_ISCONNECTINGTOSERVER  33000050//临时
#define CODE_WARN_COMM_TCP_CLIENT_ISBOUNDTOIPANDADDRESS  33000051//临时
#define CODE_WARN_COMM_TCP_SERVER_BROADCASTMESSAGEISRMPTY  33000052//临时
#define CODE_WARN_COMM_TCP_SERVER_BROADCASTMESSAGEGETFAIL  33000053//临时



/********************数据统计04*************************/
/********************文本操作05*************************/
/********************数据传送06*************************/
/********************控件模块08*************************/
/********************UI模块09*************************/
/********************外部接口10*************************/
/********************算法模块50-89*************************/
#define CODE_WARN_TOOL_ERRORPARAM                           35000010//【算法模块】参数错误
/********************备用模块90-99*************************/


#endif // ERRORCODE_H
